<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/bba.fwk.cas.model" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/bba.fwk.cas.model" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="ArrayOfDeclaracao">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Declaracao" nillable="true" type="tns:Declaracao" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfDeclaracao" nillable="true" type="tns:ArrayOfDeclaracao" />
  <xs:complexType name="Declaracao">
    <xs:sequence>
      <xs:element minOccurs="0" name="Codigo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="DeclaracaoPai" nillable="true" type="tns:Declaracao" />
      <xs:element minOccurs="0" name="Descricao" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SubDeclaracoes" nillable="true" type="tns:ArrayOfDeclaracao" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Declaracao" nillable="true" type="tns:Declaracao" />
  <xs:complexType name="ArrayOfPerfil">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Perfil" nillable="true" type="tns:Perfil" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfPerfil" nillable="true" type="tns:ArrayOfPerfil" />
  <xs:complexType name="Perfil">
    <xs:sequence>
      <xs:element minOccurs="0" name="DataInclusao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Declaracoes" nillable="true" type="tns:ArrayOfDeclaracao" />
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Menus" nillable="true" type="tns:ArrayOfItemMenu" />
      <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Objetos" nillable="true" type="tns:ArrayOfObjeto" />
      <xs:element minOccurs="0" name="Sistema" nillable="true" type="tns:Sistema" />
      <xs:element minOccurs="0" name="Telas" nillable="true" type="tns:ArrayOfTela" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Perfil" nillable="true" type="tns:Perfil" />
  <xs:complexType name="ArrayOfItemMenu">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ItemMenu" nillable="true" type="tns:ItemMenu" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfItemMenu" nillable="true" type="tns:ArrayOfItemMenu" />
  <xs:complexType name="ItemMenu">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="ItemMenuPai" nillable="true" type="tns:ItemMenu" />
      <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Pesquisavel" type="xs:boolean" />
      <xs:element minOccurs="0" name="SubMenus" nillable="true" type="tns:ArrayOfItemMenu" />
      <xs:element minOccurs="0" name="TeclaAtalho" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Tela" nillable="true" type="tns:Tela" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ItemMenu" nillable="true" type="tns:ItemMenu" />
  <xs:complexType name="Tela">
    <xs:sequence>
      <xs:element minOccurs="0" name="Descricao" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Objetos" nillable="true" type="tns:ArrayOfObjeto" />
      <xs:element minOccurs="0" name="PontoAcesso" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="TipoConfidencialidade" nillable="true" type="tns:TipoConfidencialidade" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Tela" nillable="true" type="tns:Tela" />
  <xs:complexType name="ArrayOfObjeto">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Objeto" nillable="true" type="tns:Objeto" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfObjeto" nillable="true" type="tns:ArrayOfObjeto" />
  <xs:complexType name="Objeto">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="TipoObjeto" nillable="true" type="tns:TipoObjeto" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Objeto" nillable="true" type="tns:Objeto" />
  <xs:complexType name="TipoObjeto">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="TipoObjeto" nillable="true" type="tns:TipoObjeto" />
  <xs:complexType name="TipoConfidencialidade">
    <xs:sequence>
      <xs:element minOccurs="0" name="Arquivo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Descricao" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Id" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="TipoConfidencialidade" nillable="true" type="tns:TipoConfidencialidade" />
  <xs:complexType name="Sistema">
    <xs:sequence>
      <xs:element minOccurs="0" name="Ativo" type="xs:boolean" />
      <xs:element minOccurs="0" name="DataAtivacao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="DataInativacao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Declaracoes" nillable="true" type="tns:ArrayOfDeclaracao" />
      <xs:element minOccurs="0" name="Gestores" nillable="true" type="tns:ArrayOfGestorSistema" />
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Menus" nillable="true" type="tns:ArrayOfItemMenu" />
      <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Perfis" nillable="true" type="tns:ArrayOfPerfil" />
      <xs:element minOccurs="0" name="Recursos" nillable="true" type="tns:ArrayOfRecurso" />
      <xs:element minOccurs="0" name="Sigla" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SiglaReduzida" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Sites" nillable="true" type="tns:ArrayOfSiteHolding" />
      <xs:element minOccurs="0" name="Telas" nillable="true" type="tns:ArrayOfTela" />
      <xs:element minOccurs="0" name="TipoConfidencialidade" nillable="true" type="tns:TipoConfidencialidade" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Sistema" nillable="true" type="tns:Sistema" />
  <xs:complexType name="ArrayOfGestorSistema">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="GestorSistema" nillable="true" type="tns:GestorSistema" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfGestorSistema" nillable="true" type="tns:ArrayOfGestorSistema" />
  <xs:complexType name="GestorSistema">
    <xs:sequence>
      <xs:element minOccurs="0" name="Contingencia" type="xs:boolean" />
      <xs:element minOccurs="0" name="Usuario" nillable="true" type="tns:Usuario" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GestorSistema" nillable="true" type="tns:GestorSistema" />
  <xs:complexType name="Usuario">
    <xs:sequence>
      <xs:element minOccurs="0" name="Ativo" type="xs:boolean" />
      <xs:element minOccurs="0" name="CPF" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Codigo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Contingencias" nillable="true" type="tns:ArrayOfAcessoContingencia" />
      <xs:element minOccurs="0" name="DataAlteracao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="DataAtivacao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="DataExpiracao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="DataInativacao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="DataInclusao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Funcional" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Funcoes" nillable="true" type="tns:ArrayOfFuncaoUsuario" />
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="IdEmpresa" type="xs:int" />
      <xs:element minOccurs="0" name="IdFuncionario" type="xs:int" />
      <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Perfis" nillable="true" type="tns:ArrayOfPerfilUsuario" />
      <xs:element minOccurs="0" name="RACF" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SiteHolding" nillable="true" type="tns:SiteHolding" />
      <xs:element minOccurs="0" name="UsuarioGenerico" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Usuario" nillable="true" type="tns:Usuario" />
  <xs:complexType name="ArrayOfAcessoContingencia">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="AcessoContingencia" nillable="true" type="tns:AcessoContingencia" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfAcessoContingencia" nillable="true" type="tns:ArrayOfAcessoContingencia" />
  <xs:complexType name="AcessoContingencia">
    <xs:sequence>
      <xs:element minOccurs="0" name="FimVigencia" type="xs:dateTime" />
      <xs:element minOccurs="0" name="InicioVigencia" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Motivo" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="UsuarioContingencia" nillable="true" type="tns:Usuario" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="AcessoContingencia" nillable="true" type="tns:AcessoContingencia" />
  <xs:complexType name="ArrayOfFuncaoUsuario">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="FuncaoUsuario" nillable="true" type="tns:FuncaoUsuario" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfFuncaoUsuario" nillable="true" type="tns:ArrayOfFuncaoUsuario" />
  <xs:complexType name="FuncaoUsuario">
    <xs:sequence>
      <xs:element minOccurs="0" name="DataInclusao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Funcao" nillable="true" type="tns:Funcao" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="FuncaoUsuario" nillable="true" type="tns:FuncaoUsuario" />
  <xs:complexType name="Funcao">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Perfis" nillable="true" type="tns:ArrayOfPerfil" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Funcao" nillable="true" type="tns:Funcao" />
  <xs:complexType name="ArrayOfPerfilUsuario">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="PerfilUsuario" nillable="true" type="tns:PerfilUsuario" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfPerfilUsuario" nillable="true" type="tns:ArrayOfPerfilUsuario" />
  <xs:complexType name="PerfilUsuario">
    <xs:sequence>
      <xs:element minOccurs="0" name="DataInclusao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Perfil" nillable="true" type="tns:Perfil" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PerfilUsuario" nillable="true" type="tns:PerfilUsuario" />
  <xs:complexType name="SiteHolding">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:short" />
      <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="SiteHolding" nillable="true" type="tns:SiteHolding" />
  <xs:complexType name="ArrayOfRecurso">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Recurso" nillable="true" type="tns:Recurso" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfRecurso" nillable="true" type="tns:ArrayOfRecurso" />
  <xs:complexType name="Recurso">
    <xs:sequence>
      <xs:element minOccurs="0" name="Ativo" type="xs:boolean" />
      <xs:element minOccurs="0" name="DataAtivacao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="DataInativacao" type="xs:dateTime" />
      <xs:element minOccurs="0" name="Descricao" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="TipoRecurso" nillable="true" type="tns:TipoRecurso" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Recurso" nillable="true" type="tns:Recurso" />
  <xs:complexType name="TipoRecurso">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:short" />
      <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="TipoRecurso" nillable="true" type="tns:TipoRecurso" />
  <xs:complexType name="ArrayOfSiteHolding">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="SiteHolding" nillable="true" type="tns:SiteHolding" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfSiteHolding" nillable="true" type="tns:ArrayOfSiteHolding" />
  <xs:complexType name="ArrayOfTela">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Tela" nillable="true" type="tns:Tela" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfTela" nillable="true" type="tns:ArrayOfTela" />
  <xs:complexType name="ArrayOfUsuario">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Usuario" nillable="true" type="tns:Usuario" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfUsuario" nillable="true" type="tns:ArrayOfUsuario" />
</xs:schema>